<div id="container"></div>
<script>
// function
//   function fn(p1,p2,callback){
//    if(p1>p2){
//        callback(null,p1-p2)
//    }else{
//        callback('p1必须大于p2')
//    }
//   }

//   fn(10,20,function(error,success){
//       if(error){
//           console.warn(error);
//       }else{
//           console.log('结果:',success);
//       }

//   })
  /*
 Promise函数

1. 参数不用传回调函数
2. 函数返回值是promise实例
3. 将callback版函数内容复制进入Promise构造方法的函数中
4. 回调成功的位置调用resolve
5. 回调失败的位置调用reject

  */
//  promise
  function fn(p1,p2){
return new Promise((resolve,reject)=>{
     if(p1>p2){
       resolve(p1-p2)
   }else{
       reject('p1必须大于p2')
   }
 
   })
 }
  fn(10,20).then(v=>console.log(v)).catch(e=>console.log(e))



</script>
<script type="module">
import {ajax} from './ajax.js'
// function
ajax(
    './data.json',
    true,
    (error,data)=>{
        console.log(error,data);
    }

)

// promise
ajax(
    './data.json',
    true,
).then(json=>console.log(json))
.catch(e=>console.log(e))
</script>